/* 计算自然常数e的近似值：
1 + 1/1! + 1/2! + 1/3! + ...... + 1/n!
*/
#include <stdio.h>
int main(void)
{
    float n; 
    printf("输入一个浮点数作为进度判断(0.0-1.0): ");
    scanf("%f", &n);
    float e = 0.0f, e0 = 1.0f;
    int n1;
    int i = 0;
    while (e0 > n) {
        if (i == 0)
            n1 = 1;
        else
            n1 *= i;
        e0 = 1.0f / n1;
        if (e0 < 0)
            break;
        e += e0;
        i++;
    }
    printf("自然常数e: %f\n", e);
}